home *** CD-ROM | disk | FTP | other *** search
/ Aminet 3 / Aminet 3 - July 1994.iso / Aminet / util / misc / aterminfo.lha / comp_error.c < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-12  |  1.3 KB  |  57 lines

  1.  
  2. /* This work is copyrighted. See COPYRIGHT.OLD & COPYRIGHT.NEW for   *
  3. *  details. If they are missing then this copy is in violation of    *
  4. *  the copyright conditions.                                        */
  5.  
  6. /*
  7.  *    comp_error.c -- Error message routines
  8.  *
  9.  */
  10.  
  11. #include <stdlib.h>
  12. #include <stdarg.h>
  13. #include "compiler.h"
  14.  
  15. extern char *string_table;
  16. extern short term_names;
  17.  
  18. void warning(const char *fmt, ...)
  19. {
  20.     va_list argp;
  21.  
  22.     va_start(argp,fmt);
  23.     fprintf (stderr, "compile: Warning: near line %d: ", curr_line);
  24.     fprintf (stderr, "terminal '%s', ", string_table+term_names);
  25.     vfprintf (stderr, fmt, argp);
  26.     fprintf (stderr, "\n");
  27.     va_end(argp);
  28. }
  29.  
  30.  
  31. void err_abort(const char *fmt, ...)
  32. {
  33.     va_list argp;
  34.  
  35.     va_start(argp,fmt);
  36.     fprintf (stderr, "compile: Line %d: ", curr_line);
  37.     fprintf (stderr, "terminal '%s', ", string_table+term_names);
  38.     vfprintf (stderr, fmt, argp);
  39.     fprintf (stderr, "\n");
  40.     va_end(argp);
  41.     exit(1);
  42. }
  43.  
  44.  
  45. void syserr_abort(const char *fmt, ...)
  46. {
  47.     va_list argp;
  48.  
  49.     va_start(argp,fmt);
  50.     fprintf (stderr, "PROGRAM ERROR: Line %d: ", curr_line);
  51.     fprintf (stderr, "terminal '%s', ", string_table+term_names);
  52.     vfprintf (stderr, fmt, argp);
  53.     fprintf (stderr, "\n");
  54.     va_end(argp);
  55.     abort();
  56. }
  57.